iT邦幫忙

2022 iThome 鐵人賽

DAY 6
0

當我們在寫程式碼時,會遇到需要重複執行的部分,如果我們每次遇到都複製相同的代碼,整個維護以及可讀性上就會變得很差,所以我們就需要Javascript函數! 有了函數以後,只要在需要時取用他,就可以解決以上的問題,把需要處理的事件清清楚楚地分成每一個部分,是一個專業工程師必須的技能。

函數寫法

    function 函數名稱(參數){
        要做的事情
    }

我們用中文拆分來看的話,函數寫法就是那麼的簡單!而我們舉例換成一個相乘的函數。

      function multiply(x, y) {
        return x * y;
      }
      multiply(3, 2);          //6

這個時候會有個疑問,那為甚麼會有return,是甚麼意思呢?

函數返回retrun

當我們要做的事情在函數裡遇到return時,函數會計算出返回的內容(值),並停止執行函數,跳出來將返回值回傳給調用的地方。可以想像有點像break,但同時將值返回。

      function multiply(x, y) {
        return x * y;
      }
      const result = multiply(3, 2);
      console.log(result)           //結果為6儲存至result

函數作用域

當我們寫到函數時,一定會碰到變數作用域的問題,在函數內的變數外面是取不到的,而宣告在函數外的變數函數內取的嗎?我們來看下面的範例。

      var name = "jason";
      console.log(color);       //函數外取值取不到,因為函數內是局部作用域
      function x() {
        var color = "blue";
        console.log(name);      //可宣告在外面的變數,函數內取的到值。
      }

最後我們來看一個生活上實際的例子,將華氏溫度轉為攝氏溫度,當我們寫好函數,只需要輸入溫度,按下按鈕時調用函數,邏輯十分清楚!

    <input id="input" type="text" />
    <div id="demo">現在的攝氏溫度為<span id="result"></span>度</div>
    <button type="button" onclick="btn()">轉換</button>
    <script>
      function temperature(a) {
        return (5 / 9) * (a - 32);
      }
      //按下按鈕時取input的值,接著調用temperature()函數,將結果顯示在html模板上
      function btn() {
        var a = document.getElementById("input").value;
        const result = temperature(a);
        document.getElementById("result").innerHTML = result.toFixed(3);
      }
    </script>

那今天的Javascript就到這裡了,明天將介紹Js事件,像上面的onclick!


上一篇
Day5 Javascipt資料類型
下一篇
Day7 Javascript事件
系列文
Javascripts惡補小教室30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言